
#ifndef _PEG_STRING_CONSTANTS_
#define _PEG_STRING_CONSTANTS_

#ifdef PEG_UTF8_ENCODING
PEGCHAR *PegUtf8StrnCpy(PEGCHAR *s1, const PEGUBYTE *s2, int iMax);
PEGINT PegFindUniStrLen(const PEGUBYTE *Text);
PEGINT PegUtf8LenFromUni(const PEGCHAR *Text);
void PegUtf8ToUnicode(const PEGUBYTE *Text, PEGCHAR *UniText);
void PegUnicodeToUtf8(const PEGCHAR *Text, PEGUBYTE *Utf8Text);
#endif


#if defined(PEG_UNICODE)

const PEGCHAR PEGSC_OK[] = {'O','K','\0'};
const PEGCHAR PEGSC_NO[] = {'N','o','\0'};
const PEGCHAR PEGSC_YES[] = {'Y','e','s','\0'};
const PEGCHAR PEGSC_ABORT[] = {'A','b','o','r','t','\0'};
const PEGCHAR PEGSC_CANCEL[] = {'C','a','n','c','e','l','\0'};
const PEGCHAR PEGSC_RETRY[] =  {'R','e','t','r','y','\0'};
const PEGCHAR PEGSC_CLOSE[] = {'C','l','o','s','e','\0'};
const PEGCHAR PEGSC_APPLY[] = {'A','p','p','l','y', 0};
const PEGCHAR PEGSC_TEST[]   = {'A','\0'};
const PEGCHAR PEGSC_MINIMIZE[] = {'M','i','n','i','m','i','z','e','\0'};
const PEGCHAR PEGSC_MAXIMIZE[] = {'M','a','x','i','m','i','z','e','\0'};
const PEGCHAR PEGSC_NULL[]     = {'\0'};
const PEGCHAR PEGSC_RESTORE[]  = {'R','e','s','t','o','r','e','\0'};
const PEGCHAR PEGSC_SPACE[]    = {' ','\0'};
const PEGCHAR PEGSC_HELP[]     = {'H','e','l','p', 0};
const PEGCHAR PEGSC_DOTDOT[]   = {'.','.','.',0};

#if defined(PEG_IMAGE_CONVERT)
const PEGCHAR PEGSC_NotAllowed[] = {'I','n','l','i','n','e', ' ','C','o','n','v','e','r','s','i','o','n',' ',
    'o','f', ' ','2','4','b','p','p',' ','i','m','a','g','e','s',' ',
    'i','s',' ','n','o','t',' ','s','u','p','p','o','r','t','e','d','\0'};
const PEGCHAR PEGSC_BadMagic[] = {'E','r','r','o','r',' ','r','e','a','d','i',
    'n','g',' ','m','a','g','i','c',' ','n','u','m','b','e','r','.','\0'};
const PEGCHAR PEGSC_NotAGif[] = {'N','o','t',' ','a',' ','G','I','F',' ','f',
    'i','l','e','.','\0'};
const PEGCHAR PEGSC_BadGifVer[] = {'B','a','d',' ','v','e','r','s','i','o','n',
    ' ','n','u','m','b','e','r',',',' ','n','o','t',' ',
    '\'','8','7','a','\'',' ','o','r',' ','\'','8','9','a','\'','.','\0'};
const PEGCHAR PEGSC_ScrnDescFail[] = {'F','a','i','l','e','d',' ','t','o',
    ' ','r','e','a','d',' ','s','c','r','e','e','n',' ',
    'd','e','s','c','r','i','p','t','o','r','.','\0'};
const PEGCHAR PEGSC_GifRdErr[] = {'R','e','a','d',' ','e','r','r','o','r',' ',
    'o','n',' ','i','m','a','g','e',' ','d','a','t','a','.','\0'};
const PEGCHAR PEGSC_BadColormap[] = {'B','a','d',' ','C','o','l','o','r','m','a','p','\0'};
const PEGCHAR PEGSC_OutOfMem[] = {'O','u','t',' ','O','f',' ',
    'M','e','m','o','r','y','\0'};
const PEGCHAR PEGSC_Unsupported[] = {'U','n','s','u','p','p','o','r','t','e','d',
    ' ','I','m','a','g','e',' ','T','y','p','e',0};
#endif      // PEG_IMAGE_CONVERT

#if defined(PEG_FILE_DIALOG)

const PEGCHAR PEGSC_Home[] = {'H', 'o', 'm', 'e', '\0'};
const PEGCHAR PEGSC_Up[] = {'U', 'p', '\0'};
const PEGCHAR PEGSC_Refresh[] = {'R', 'e', 'f', 'r', 'e', 's', 'h', '\0'};
const PEGCHAR PEGSC_ViewAll[] = {'V', 'i', 'e', 'w', ' ', 'A', 'l', 'l', '\0'};
const PEGCHAR PEGSC_Filter[] = {'F', 'i', 'l', 't', 'e', 'r', '\0'};
const PEGCHAR PEGSC_Directories[] = {'D', 'i', 'r', 'e', 'c', 't', 'o', 'r', 'i',
                                'e', 's', '\0'};
const PEGCHAR PEGSC_Files[] = {'F', 'i', 'l', 'e', 's', '\0'};
const PEGCHAR PEGSC_Selection[] = {'S', 'e', 'l', 'e', 'c', 't', 'i', 'o', 'n',
                              ':', '\0'};
const PEGCHAR PEGSC_FilterColon[] = {'F', 'i', 'l', 't', 'e', 'r', ':', '\0'};
const PEGCHAR PEGSC_FileError[] = {'F', 'i', 'l', 'e', ' ', 'E', 'r', 'r', 'o',
                                'r', '\0'};
const PEGCHAR PEGSC_SelectFile[] = {'P', 'l', 'e', 'a', 's', 'e', ' ', 's', 'e',
                                 'l', 'e', 'c', 't', ' ', 'a', ' ', 'f', 'i',
                                 'l', 'e', ' ', 'n', 'a', 'm', 'e', '.', '\0'};
const PEGCHAR PEGSC_EnterFile[] = {'P', 'l', 'e', 'a', 's', 'e', ' ', 'e', 'n',
                                 't', 'e', 'r', ' ', 'a', ' ', 'f', 'i',
                                 'l', 'e', ' ', 'n', 'a', 'm', 'e', '.', '\0'};
const PEGCHAR PEGSC_NoActiveFilter[] = {'N', 'o', ' ', 'F', 'i', 'l', 't', 'e',
                                     'r', ' ', 'A', 'c', 't', 'i', 'v', 'e',
                                     '\0'};
const PEGCHAR PEGSC_OverwriteOk[] = {'T', 'h','e', ' ', 's', 'e', 'l', 'e', 't',
                                  'e', 'd', ' ', 'f', 'i', 'l', 'e', ' ',
                                  'e', 'x', 'i', 's', 't', 's', '.', ' ',
                                  'O', 'v', 'e', 'w', 'r', 'i', 't', 'e', ' ',
                                  'i', 't', '?', '\0' };
const PEGCHAR PEGSC_NoCreateFile[] = {'U', 'n', 'a', 'b', 'l', 'e', ' ', 't', 'o',
                                   ' ', 'c', 'r', 'e', 'a', 't', 'e', ' ', 't',
                                   'h', 'e', ' ', 'f', 'i', 'l', 'e', '.', ' ',
                                   'P', 'l', 'e', 's', 'e', ' ', 'c',
                                   'h', 'e', 'c', 'k', ' ', 'y', 'o', 'u', 'r',
                                   ' ', 'p', 'e', 'r', 'm', 'i', 's', 's', 'i',
                                   'o', 'n', 's', '.', '\0' };
#endif      // PEG_FILE_DIALOG

#if defined(PEG_DIR_BROWSER)
const  PEGCHAR PEGSC_SelectDir[] = { 'P', 'l', 'e', 's', 'e', ' ', 's', 'e', 
                                     'l', 'e', 'c', 't', ' ', 'a', ' ', 'd', 
                                     'i', 'r', 'e', 'c', 't', 'o', 'r', 'y', 
                                     '.', '\0' };
#endif  // PEG_DIR_BROWSER


#else   // PEG_UNICODE is not defined

const PEGCHAR PEGSC_OK[] = "OK";
const PEGCHAR PEGSC_NO[] = "No";
const PEGCHAR PEGSC_YES[] = "Yes";
const PEGCHAR PEGSC_ABORT[] = "Abort";
const PEGCHAR PEGSC_CANCEL[] = "Cancel";
const PEGCHAR PEGSC_RETRY[] = "Retry";
const PEGCHAR PEGSC_CLOSE[] = "Close";
const PEGCHAR PEGSC_APPLY[] = "Apply";
const PEGCHAR PEGSC_TEST[]   = "A";
const PEGCHAR PEGSC_MINIMIZE[] = "Minimize";
const PEGCHAR PEGSC_MAXIMIZE[] = "Maximize";
const PEGCHAR PEGSC_NULL[]     = "";
const PEGCHAR PEGSC_RESTORE[]  = "Restore";
const PEGCHAR PEGSC_SPACE[]    = " ";
const PEGCHAR PEGSC_HELP[] = "Help";
const PEGCHAR PEGSC_DOTDOT[] = "...";

#ifdef PEG_IMAGE_CONVERT
const PEGCHAR PEGSC_NotAllowed[] = "Inline Conversion of 24bpp images is not allowed";
const PEGCHAR PEGSC_BadMagic[] = "Error reading magic number.";
const PEGCHAR PEGSC_NotAGif[] = "Not a GIF file.";
const PEGCHAR PEGSC_BadGifVer[] = "Bad version number, not '87a' or '89a'.";
const PEGCHAR PEGSC_ScrnDescFail[] = "Failed to read screen descriptor.";
const PEGCHAR PEGSC_GifRdErr[] = "Read error on image data.";
const PEGCHAR PEGSC_BadColormap[] = "Bad Colormap";
const PEGCHAR PEGSC_OutOfMem[] = "Out Of Memory";
const PEGCHAR PEGSC_Unsupported[] = "Unsupported Image Type";
#endif

#if defined(PEG_FILE_DIALOG)
const PEGCHAR PEGSC_Home[] = "Home";
const PEGCHAR PEGSC_Up[] = "Up";
const PEGCHAR PEGSC_Refresh[] = "Refresh";
const PEGCHAR PEGSC_ViewAll[] = "View All";
const PEGCHAR PEGSC_Filter[] = "Filter";
const PEGCHAR PEGSC_Directories[] = "Directories";
const PEGCHAR PEGSC_Files[] = "Files";
const PEGCHAR PEGSC_Selection[] = "Selection:";
const PEGCHAR PEGSC_FilterColon[] = "Filter:";
const PEGCHAR PEGSC_FileError[] = "File Error";
const PEGCHAR PEGSC_SelectFile[] = "Please select a file name.";
const PEGCHAR PEGSC_EnterFile[] = "Please enter a file name.";
const PEGCHAR PEGSC_NoActiveFilter[] = "No Filter Active";
const PEGCHAR PEGSC_OverwriteOk[] = "The selected file exists. Overwrite it?";
const PEGCHAR PEGSC_NoCreateFile[] = "Unable to create the file. Please check "
                                  "your permissions.";

#endif  // PEG_FILE_DIALOG?

#if defined (PEG_DIR_BROWSER)
const PEGCHAR PEGSC_SelectDir[] = "Please select a directory.";
#endif

#endif  // PEG_UNICODE?

const PEGINT PEGSID_OK =         1;
const PEGINT PEGSID_NO =         2;
const PEGINT PEGSID_YES =        3;
const PEGINT PEGSID_ABORT =      4;
const PEGINT PEGSID_CANCEL =     5;
const PEGINT PEGSID_RETRY =      6;
const PEGINT PEGSID_CLOSE =      7;
const PEGINT PEGSID_APPLY =      8;
const PEGINT PEGSID_TEST =       9;
const PEGINT PEGSID_MINIMIZE =   10;
const PEGINT PEGSID_MAXIMIZE =   11;
const PEGINT PEGSID_NULL =       12;
const PEGINT PEGSID_RESTORE =    13;
const PEGINT PEGSID_SPACE =      14;
const PEGINT PEGSID_HELP =       15;

const PEGINT PEGSID_NOT_ALLOWED = 16;
const PEGINT PEGSID_BAD_MAGIC   = 17;
const PEGINT PEGSID_NOTAGIF     = 18;
const PEGINT PEGSID_BAD_GIF_VER = 19;
const PEGINT PEGSID_SCRNDSCFAIL = 20;
const PEGINT PEGSID_GIFRDERR    = 21;
const PEGINT PEGSID_BAD_CLR_MAP = 22;
const PEGINT PEGSID_OUTOFMEM    = 23;
const PEGINT PEGSID_UNSUPPORTED = 24;

const PEGINT PEGSID_HOME =           25;
const PEGINT PEGSID_UP =             26;
const PEGINT PEGSID_REFRESH =        27;
const PEGINT PEGSID_VIEWALL =        28;
const PEGINT PEGSID_FILTER =         29;
const PEGINT PEGSID_DIRECTORIES =    30;
const PEGINT PEGSID_FILES =          31;
const PEGINT PEGSID_SELECTION =      32;
const PEGINT PEGSID_FILTERCOLON =    33;
const PEGINT PEGSID_FILEERROR =      34;
const PEGINT PEGSID_SELECTFILE =     35;
const PEGINT PEGSID_ENTERFILE =      36;
const PEGINT PEGSID_NOACTIVEFILTER = 37;
const PEGINT PEGSID_OVERWRITEOK =    38;
const PEGINT PEGSID_NOCREATEFILE =   39;

const PEGINT PEGSID_SELECTDIR =      40;

const PEGINT PEGSID_DOTDOT =         41;


#endif  // sentry



